

type MyReadonly2<T, K extends keyof T = keyof T> = Omit<T,K> & {
    readonly [P in K]:T[P]   
}

// interface Todo1 {
//     title: string
//     description?: string
//     completed: boolean
//   }

// type t =MyReadonly2<Todo1, 'title' | 'description'>
